﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sinacor.UI.Bovespa.ImportacaoExportacao.Communication.Translator.ModelToProcessEntity
{
    public class ImportacaoNegocio
    {
        public Process.Bovespa.Negocio.ProcessEntity.Parameter.FiltroImportacaoNegocio ToFiltroImportacaoNegocio(Model.Parameter.FiltroImportacaoNegocio from)
        {
            Process.Bovespa.Negocio.ProcessEntity.Parameter.FiltroImportacaoNegocio to = null;

            if (from != null)
            {
                to = new Process.Bovespa.Negocio.ProcessEntity.Parameter.FiltroImportacaoNegocio();

                to.CodigoCorrespondente = from.CodigoCorrespondente;
                to.NomeArquivo = from.NomeArquivo;

                switch (from.TipoArquivo)
                {
                    case UI.Bovespa.ImportacaoExportacao.Model.Enum.TipoArquivo.NEGR:
                        to.TipoArquivo = Process.Bovespa.Negocio.ProcessEntity.Enum.TipoArquivo.NEGR;
                        break;
                    case UI.Bovespa.ImportacaoExportacao.Model.Enum.TipoArquivo.NEGS:
                        to.TipoArquivo = Process.Bovespa.Negocio.ProcessEntity.Enum.TipoArquivo.NEGS;
                        break;
                }
                
                if(from.TipoSistema == Model.Enum.TipoSistema.Bolsa)
                    to.TipoSistema = Process.Bovespa.Negocio.ProcessEntity.Enum.TipoSistema.Bolsa;
                else
                    to.TipoSistema = Process.Bovespa.Negocio.ProcessEntity.Enum.TipoSistema.Ordens;

                if (from.TipoFormatoArquivo == Model.Enum.TipoFormatoArquivo.TXT)
                    to.TipoFormatoArquivo = Process.Bovespa.Negocio.ProcessEntity.Enum.TipoFormatoArquivo.TXT;
                else
                    to.TipoFormatoArquivo = Process.Bovespa.Negocio.ProcessEntity.Enum.TipoFormatoArquivo.XML;
            }

            return to;
        }
    }
}
